Reference

About Client/Server

 

 

Client/Server is a powerful new feature within Stardraw Control 2007 that enables your system to have multiple Clients, or user interfaces, that communicate with a single Server PC.

 

In This Section

What is Client/Server?

Explains the basics of Client/Server features, it benefits and advantages, and some scenarios where it can be used.

 

Client/Server vs. Remote Desktop

Compares the benefits of Remote Desktop and Client Server.

 

Designing a Client/Server Project

How to create Client/Server projects, and points to think about in your design.

 

Deploying Client/Server Projects

Covers building and installing Clients and Servers, and explains Client/Server licensing.

 

What is Client/Server?

A Client/Server project simply generates two types of executable: the single Server executable has no GUI but contains all of the drivers and device settings; the Client executables contain the user interface that connects with the Server.

 

This allows your installation to have more than one point from where equipment can be controlled: each Client connects with the Server, whose job it is to communicate with the devices under control.

 

Why use Client/Server?

One of the technical reasons why Client/Server is so powerful is that many device protocols only allow a single connection to the device.  Examples are Serial General term for the widely-used RS232 standard that defines electrical, connectivity and protocol for basic, but relatively low-speed communication. which is limited physically to one connection, and also Ethernet General term for a star-topology network standard, upon which protocols such as TCP/IP travel. devices that only allow one TCP/IP connection at a time.

 

Before Client/Server, the ability to scale a system beyond one or two additional UIs was severely limited; now you can have as many clients in the same network as you wish.  And because Clients can have different UIs and functionality, you can specify precisely the amount of control each Client can have.  This also allows you to use different form factors of PC for different places in your installation.

 

A conceptual diagram of the Client/Server model illustrates the relationship between the Clients, the Server and devices:

 

 

The Client/Server model

 

Some examples of where Client/Server can be of great benefit:

 

Scalability, Flexibility and Security

The Client/Server feature within Stardraw Control 2007 means you can scale a project up very easily, simply by deploying more Clients into the installation, up to the number allowed by your license.

 

It also allows you to create completely different Client UIs for when requirements change or your customer wants to do something new with their system.  New Client UIs can be created and added at any time, or swapped in and out as required, without the need to change the existing executables on the Server or Clients.

 

Each Client connects to the Server using either TCP/IP or HTTP, which means you can extend the reach of control across the world if you wish, simply by using the HTTP protocol and ensuring your server has a globally accessible (or routable) IP Address, and an Internet or VPN connection.

 

This also gives your installation increased security, as you can separate the network that the Clients use from the network that your devices are controlled with.

 

Client/Server vs. Remote Desktop

Basic multi-point control can be achieved using Remote Desktop, whereby the control panel simply acts as a remote terminal for the actual standalone executable running on another machine.  Remote Desktop can be used to scale your project by adding additional graphics cards and running separate forms on each desktop display surface.

 

Scalability is limited to the graphics resources of one PC, and beyond one or two remote clients, this can become cumbersome to configure and manage.  Remote Desktop also requires doubling up on machines and equipment; each remote control point requires another host PC to run the client executable.

 

This approach has some practical limitations and cost implications, all of which are neatly solved with Client/Server.  Instead of having each remote client PC mirroring a separate host PC, with true Client/Server only one Server PC is required to host all of the Client connections.

 

Both Client/Server and Remote Desktop support "wide-area" connections that allow you to host clients that are truly remote from your installation.

 

Remote Desktop is a useful solution for one or two additional remote terminals; the choice between Remote Desktop and Client/Server will be a trade-off between the additional license cost of Client/Server and the additional hardware and configuration cost of Remote Desktop, as well as the ability for Client/Server to easily add additional Clients to an existing installation.

 

Remote Desktop may still have a place in a Client/Server installation; for example if you wish to use a PDA or other control device that does not support the required .Net Framework (e.g. Windows CE), mixing Client/Server and Remote Desktop gives you the benefits of both technologies.

 

See Also

Support